import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import {FormsModule, ReactiveFormsModule} from '@angular/forms';
import { LoginComponent } from './login/login.component';
import { StudentComponent } from './student/student.component';
import { HttpClientModule } from '@angular/common/http';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { NZ_I18N } from 'ng-zorro-antd/i18n';
import { zh_CN } from 'ng-zorro-antd/i18n';
import { registerLocaleData } from '@angular/common';
import zh from '@angular/common/locales/zh';
import { HomeComponent } from './home/home.component';
import {NgZorroAntdModule, NzBreadCrumbModule, NzIconModule, NzLayoutModule, NzMenuModule} from 'ng-zorro-antd';
import { WelcomeComponent } from './welcome/welcome.component';
import { CourseComponent } from './course/course.component';
// @ts-ignore
import { CourseSelectComponent } from './course-select/course-select.component';
import {GPAPipe} from './GPA.pipe';
import {CourseDetailComponent} from './course-detail/course-detail.component';
import { GradePointPipe } from './grade-point.pipe';
import { InformationComponent } from './information/information.component';
import { StudentDetailComponent } from './student-detail/student-detail.component';
import { StudentgradeComponent } from './studentgrade/studentgrade.component';
import { SearchComponent } from './search/search.component';
import {NgxEchartsModule} from 'ngx-echarts';
import {StudentsgradeComponent} from './studentsgrade/studentsgrade.component';
import { HometowmComponent } from './hometowm/hometowm.component';
import * as echarts from 'echarts';
import { AgeTableComponent } from './age-table/age-table.component';
import { PanelComponent } from './panel/panel.component';
import { NzCollapseModule } from 'ng-zorro-antd/collapse';
import {GPAMajorComponent} from './gpa-major/gpa-major.component';
import { CourseGPAComponent } from './course-gpa/course-gpa.component';
import { PageComponent } from './page/page.component';
import { CreditPipe } from './credit.pipe';
import { SelectCourseComponent } from './select-course/select-course.component';
import { SnoSearchComponent } from './sno-search/sno-search.component';
import { SnoGradeComponent } from './sno-grade/sno-grade.component';
import { SearchCourseComponent } from './search-course/search-course.component';
import { CourseStudentComponent } from './course-student/course-student.component';


registerLocaleData(zh);

@NgModule({
  declarations: [
    AppComponent,
    LoginComponent,
    StudentComponent,
    HomeComponent,
    WelcomeComponent,
    CourseComponent,
    CourseSelectComponent,
    CourseDetailComponent,
    GPAPipe,
    GradePointPipe,
    InformationComponent,
    StudentDetailComponent,
    StudentgradeComponent,
    SearchComponent,
    StudentsgradeComponent,
    HometowmComponent,
    AgeTableComponent,
    PanelComponent,
    GPAMajorComponent,
    CourseGPAComponent,
    PageComponent,
    CreditPipe,
    SelectCourseComponent,
    SnoSearchComponent,
    SnoGradeComponent,
    SearchCourseComponent,
    CourseStudentComponent
  ],
  imports: [
    BrowserModule,
    AppRoutingModule,
    FormsModule,
    HttpClientModule,
    BrowserAnimationsModule,
    NzLayoutModule,
    NzBreadCrumbModule,
    NzMenuModule,
    NzIconModule,
    NgZorroAntdModule,
    ReactiveFormsModule,
    NgxEchartsModule,
    NgxEchartsModule.forRoot({
      echarts}),
    NzCollapseModule
  ],
  providers: [{ provide: NZ_I18N, useValue: zh_CN }],
  bootstrap: [AppComponent]
})
export class AppModule { }
